<template>
  <div id="cluereport">
    <el-dialog
      append-to-body
      :title="dialogtitle"
      :visible.sync="dialogVisible"
      width="98%" top="20px" :close-on-click-modal="false" :close-on-press-escape="false">
      <cadreHandlingEdit @dialogHide="dialogHide($event)" :data="item" :readOnly="readonly" :timestamp="timestamp2"></cadreHandlingEdit>
    </el-dialog>
    <section class="wboxd">
      <!--列表-->
      <el-table :data="list" highlight-current-row v-loading="listLoading" style="width: 100%;" @sort-change='sortChange' border
        @selection-change="handleSelectionChange"
        ref="multipleTable"
        >
        <el-table-column type="index" label="序号" width="50" fixed align="center" class-name="tableth">
        </el-table-column>
        <el-table-column prop="xm" label="姓名" width="100">
        </el-table-column>
        <el-table-column prop="xb" label="性别" width="70">
        </el-table-column>
        <el-table-column prop="dw" label="单位" show-overflow-tooltip>
        </el-table-column>
        <el-table-column prop="zw" label="职务" width="130" show-overflow-tooltip>
        </el-table-column>
        <el-table-column prop="zwcc" label="职务层次" width="130" show-overflow-tooltip>
        </el-table-column>
        <el-table-column prop="wtly" label="问题来源" width="130" show-overflow-tooltip>
          <template slot-scope="scope">
            {{scope.row.wtlyText}}<span v-if="scope.row.wtlyText==='其他'">：{{scope.row.qtwtly}}</span>
          </template>
        </el-table-column>
        <el-table-column prop="cllx" label="处理处分类型" width="180" show-overflow-tooltip>
          <template slot-scope="scope">
            <el-popover placement="top-start" width="400" trigger="hover" v-if="scope.row.cllx.split(',').length>1">
              <div v-for="(item,index) in cllxDic" :key="index" style="clear:both">
                <div v-if="scope.row.cllx&&scope.row.cllx!==''&&scope.row.cllx.indexOf(item.value)>-1">
                  <div style="font-size:var(--size14) !important;float:left;font-weight:bolder">{{item.label}}：</div>
                  <div style="font-size:var(--size14) !important;float:left;padding-left:10px" v-for="(it,idx) in item.children" :key="idx" v-show="scope.row.cllx.split(',').indexOf(it.value)>-1">{{it.label}}</div>
                  <!-- <div style="font-size:var(--size14) !important;float:left;" v-if="item.value==='0901'&&scope.row.cllx.split(',').indexOf('090105')>-1">（{{JSON.parse(scope.row.qtcllx)['090105']}}）</div>
                  <div style="font-size:var(--size14) !important;float:left;" v-if="item.value==='0902'&&scope.row.cllx.split(',').indexOf('090206')>-1">（{{JSON.parse(scope.row.qtcllx)['090206']}}）</div> -->
                  <div style="font-size:var(--size14) !important;float:left;" v-if="item.value==='0905'&&scope.row.cllx.split(',').indexOf('0905')>-1">（{{JSON.parse(scope.row.qtcllx)['0905']}}）</div>
                </div>
              </div>
              <span slot="reference">{{cllxCode2Name(scope.row.cllx.split(","))}}...</span>
            </el-popover>
            <span v-else>{{cllxCode2Name(scope.row.cllx.split(","))}}</span>
          </template>
        </el-table-column>
        <!-- <el-table-column prop="cljdjg" label="处理决定机关" width="120" show-overflow-tooltip>
          <template slot-scope="scope">
            {{scope.row.cljdjgText}}<span v-if="scope.row.cljdjgText==='其他'">：{{scope.row.qtcljdjg}}</span>
          </template>
        </el-table-column>
        <el-table-column prop="cljdsj" label="处理决定时间" width="110">
        </el-table-column>
        <el-table-column prop="yxq" label="影响期" width="80">
          <template slot-scope="scope">
            {{scope.row.yxqText}}<span v-if="scope.row.yxqText==='其他'">：{{scope.row.qtyxq}}</span>
          </template>
        </el-table-column> -->
        <el-table-column label="操作" width="100">
          <template slot-scope="scope">
            <el-button @click="detail(scope.row)" style="color:#000 !important;margin:10px 0">查看</el-button>
          </template>
        </el-table-column>
      </el-table>
    </section>
  </div>
</template>

<script>
import cadreHandlingEdit from './edit'
export default {
  components: {
    cadreHandlingEdit
  },
  watch: {
    idcardNo: {
      handler (val) {
        if (val && val !== '') {
          this.getList()
        }
      },
      immediate: true
    },
    timestamp: {
      handler (newName, oldName) {
        console.log(newName)
        this.getList()
      },
      immediate: true
    }
  },
  props: {
    idcardNo: '',
    timestamp: ''
  },
  data () {
    return {
      exportLoading1: false,
      cllxDic: [],
      wtlyDic: [],
      cljdjgDic: [],
      yxqDic: [],
      roleShow: true,
      roleShowAll: true,
      roleAdmin: true,
      roleEdit: true,
      roleChart: true,
      settype: '',
      userRoles: [],
      setAuthText: '',
      roleSubmitLoading2: false,
      isIndeterminate2: false,
      roleSubmitLoading: false,
      role: [],
      checkAll2: false,
      checkAll: false,
      isIndeterminate: false,
      setRole: false,
      setrole0: false,
      // roles: [{label: '查看', value: 1}, {label: '编辑', value: 2}, {label: '分析', value: 3}],
      roles: ['查看', '编辑', '分析'],
      roles2: [],
      roleuser: [],
      userlist: [],
      processId: '',
      roleForm: {
        id: '',
        processId: '',
        authUserId: '',
        dw: false,
        xm: false,
        idcardno: false,
        xb: false,
        zw: false,
        zwcc: false,
        zywgwjwtzy: false,
        wtly: false,
        qtwtly: false,
        wtrd: false,
        cllx: false,
        qtcllx: false,
        clnr: false,
        cljdjg: false,
        qtcljdjg: false,
        cljdsj: false,
        clzxqk: false,
        yxq: false,
        qtyxq: false,
        jdws: false,
        remark: false
      },
      drawer: false,
      authUser: '',
      authFlag: false,
      timestamp2: '',
      noRoleCode: '***',
      noRoleText: '***',
      filters: {
        xm: '',
        dw: '',
        wtly: '',
        cllx: [],
        cljdjg: '',
        cljdsj: [],
        yxq: ''
      },
      listLoading: false,
      ids: [],
      tableHeight: 100,
      list: [],
      pageNum: 1,
      pageSize: 20,
      totalnum: 0,
      item: {},
      dialogtitle: '新增干部处理',
      dialogVisible: false,
      readonly: false,
      testAddFormLoading: false,
      testAddForm: {
        UserName: '',
        PassWord: '',
        TrueName: '',
        UnitName: '',
        Enable: '停用'
      },
      total: 0,
      Isace: 'asc',
      Sortkey: '',
      changeSizeFlag: false,
      myloading: false
    }
  },
  methods: {
    cllxCode2Name (codeArr) {
      for (let i = 0; i < codeArr.length; i++) {
        for (let item of this.cllxDic) {
          let cllxName = ''
          if (codeArr[i] && codeArr[i] !== '' && codeArr[i].indexOf(item.value) > -1) {
            cllxName = item.label + ':'
            for (let it of item.children) {
              if (codeArr[i].indexOf(it.value) > -1) { cllxName += it.label }
            }
          }
          if (cllxName !== '') {
            return cllxName
          }
        }
      }
    },
    download (fileid) {
      var downloadElement = document.createElement('a')
      downloadElement.href = this.$http.defaults.baseURL + this.$http.defaults.selectionAPI + 'api/gen/file/download?id=' + fileid
      document.body.appendChild(downloadElement)
      downloadElement.click() // 点击下载
      document.body.removeChild(downloadElement) // 下载完成移除元素
    },
    exportChart1 () {
      let para = {
        xm: this.filters.xm,
        dw: this.filters.dw,
        wtly: this.filters.wtly && this.filters.wtly !== '' ? this.filters.wtly : null,
        cllx: this.filters.cllx && this.filters.cllx.length > 0 ? this.filters.cllx[this.filters.cllx.length - 1] : null,
        cljdjg: this.filters.cljdjg && this.filters.cljdjg !== '' ? this.filters.cljdjg : null,
        cljdsj: this.filters.cljdsj ? this.filters.cljdsj[0] : null,
        cljdsj2: this.filters.cljdsj ? this.filters.cljdsj[1] : null,
        yxq: this.filters.yxq && this.filters.yxq !== '' ? this.filters.yxq : null,
        pageNum: this.pageNum,
        pageSize: this.pageSize,
        sortField: this.Sortkey,
        sortOrder: this.Isace
      }
      this.exportLoading1 = true
      // var personParams = { Page: 0, Pagenum: 20, Personname: '', Unitkey: '', Sortkey: '', Isace: true, timestamp: new Date().getTime() }
      this.$http
        .post(this.$http.defaults.selectionAPI + `api/busClueReportProcess/exportProcess`, para)
        .then(response => {
          if (response.data.success) {
            this.download(response.data.result)
            this.exportLoading1 = false
          } else {
            this.$message({
              message: '导出失败:' + response.data.message,
              type: 'error'
            })
          }
        })
        .catch(error => {
          this.$message({
            message: '网络导出失败:' + error,
            type: 'error'
          })
        })
    },
    getDics (code) {
      this.$http
        .get(this.$http.defaults.selectionAPI + `api/sysDict/getByCode?code=` + code)
        .then(response => {
          if (response.data.success) {
            switch (code) {
              case '08':
                this.wtlyDic = response.data.result
                break
              case '09':
                this.cllxDic = response.data.result
                this.cllxDic.unshift({value: null, label: '全部'})
                break
              case '10':
                this.cljdjgDic = response.data.result
                break
              case '11':
                this.yxqDic = response.data.result
                break
            }
          } else {
            this.$message({
              message: '获取失败:' + response.data.message,
              type: 'error'
            })
          }
        })
        .catch(error => {
          console.log(error)
          this.$message({
            message: '网络获取失败:' + error,
            type: 'error'
          })
        })
    },
    getAllDics () {
      this.getDics('08')
      this.getDics('09')
      this.getDics('10')
      this.getDics('11')
    },
    showchart () {
      this.$router.push('/cadrehandling/chart')
    },
    showlog () {
      this.$router.push('/cadrehandling/log')
    },
    geCurrUserRole () {
      this.$http.get(this.$http.defaults.selectionAPI + `api/busClueReportFuncAuth/geCurrUserFuncList2`).then(response => {
        if (response.data.success) {
          this.roleShow = response.data.result.roleShow
          this.roleShowAll = response.data.result.roleShowAll
          this.roleAdmin = response.data.result.roleAdmin
          this.roleEdit = response.data.result.roleEdit
          this.roleChart = response.data.result.roleChart
        } else {
          console.log('获取失败:' + response.data.message)
          this.$message({
            message: '获取失败:' + response.data.message,
            type: 'error'
          })
        }
      })
    },
    handleCheckAllChange2 (val) {
      this.roles2 = []
      for (let item in this.roleForm) {
        if (item !== 'id' && item !== 'processId' && item !== 'authUserId') {
          this.roles2.push(item)
        }
      }
      console.log(this.roles2)
      this.selected = val ? this.roles2 : []
      for (let item in this.roleForm) {
        if (item !== 'id' && item !== 'processId' && item !== 'authUserId') {
          if (this.selected.indexOf(item) > -1) {
            this.roleForm[item] = true
          } else {
            this.roleForm[item] = false
          }
        }
      }
      this.isIndeterminate2 = false
    },
    roles2change () {
      this.selected = []
      this.roleForm.qtwtly = this.roleForm.wtly
      this.roleForm.qtcllx = this.roleForm.cllx
      this.roleForm.qtyxq = this.roleForm.yxq
      this.roleForm.qtcljdjg = this.roleForm.cljdjg
      for (let item in this.roleForm) {
        if (item !== 'id' && item !== 'processId' && item !== 'authUserId' && this.roleForm[item]) {
          this.selected.push(item)
        }
      }
      console.log(this.selected)
      if (this.selected.length > 0) {
        this.isIndeterminate2 = true
      } else {
        this.isIndeterminate2 = false
      }
    },
    getRoles () {
      this.role = []
      this.isIndeterminate = false
      this.$http.get(this.$http.defaults.selectionAPI + `api/busClueReportFuncAuth/geUserFuncList2?userId=` + this.roleuser[1]).then(response => {
        if (response.data.success) {
          let roleids = response.data.result
          for (let roleid of roleids) {
            this.role.push(this.roles[roleid - 1])
          }
          this.handleCheckedChange(this.role)
        } else {
          console.log('获取失败:' + response.data.message)
          this.$message({
            message: '获取失败:' + response.data.message,
            type: 'error'
          })
        }
      })
    },
    getRoles2 () {
      this.listLoading = true
      this.$http.get(this.$http.defaults.selectionAPI + `api/busClueReportProcessAuth/getAuthByPerson?userId=` + this.roleuser[1]).then(response => {
        if (response.data.success) {
          this.$refs.multipleTable.clearSelection()
          let ids = []
          this.userRoles = response.data.result
          for (let item of this.userRoles) {
            for (let info of this.list) {
              if (item.processId === info.id) {
                ids.push(info)
              }
            }
          }
          this.toggleSelection(ids)
          this.listLoading = false
        } else {
          this.listLoading = false
          console.log('获取失败:' + response.data.message)
          this.$message({
            message: '获取失败:' + response.data.message,
            type: 'error'
          })
        }
      })
    },
    toggleSelection (rows) {
      if (rows && rows.length > 0) {
        rows.forEach(row => {
          this.$refs.multipleTable.toggleRowSelection(row)
        })
      } else {
        this.$refs.multipleTable.clearSelection()
      }
    },
    submitRoles () {
      let roleids = []
      for (let item of this.role) {
        if (this.roles.indexOf(item) !== '-1') { roleids.push(this.roles.indexOf(item) + 1) }
      }
      // if (roleids.length === 0) {
      //   this.$message({
      //     message: '至少选择一项授权',
      //     type: 'warning'
      //   })
      //   return
      // }
      let para = {authUserId: this.roleuser[1], funcIds: roleids, funcType: 2}
      this.roleSubmitLoading = true
      this.$http.post(this.$http.defaults.selectionAPI + `api/busClueReportFuncAuth/saveUserFunc`, para).then(response => {
        this.roleSubmitLoading = false
        if (response.data.success) {
          this.$message({
            message: '提交成功',
            type: 'success'
          })
          this.setrole0 = false
        } else {
          this.$message({
            message: '提交失败:' + response.data.message,
            type: 'error'
          })
        }
      })
    },
    submitRoles2 () {
      let testflag = false
      for (let item in this.roleForm) {
        if (item !== 'id' && item !== 'id' && item !== 'id' && this.roleForm[item]) {
          testflag = true
          break
        }
      }
      if (!testflag) {
        this.$message({
          message: '至少选择一个字段',
          type: 'warning'
        })
        return
      }
      let insertList = []
      let updateList = []
      let removeList = []
      if (this.settype === 2) { // 批量授权模式
        console.log('settype2')
        for (let item of this.ids) { // 遍历所有选中纪录
          let insertObj = Object.assign({}, this.roleForm)
          insertObj.authUserId = this.roleuser[1]
          insertObj.processId = item.id
          let insertOrUpdate = 'insert'
          for (let userRole of this.userRoles) {
            if (userRole.processId === item.id) {
              insertObj.id = userRole.id
              insertOrUpdate = 'update'
              break
            }
          }
          if (insertOrUpdate === 'insert') {
            insertList.push(insertObj)
          } else if (insertOrUpdate === 'update') {
            updateList.push(insertObj)
          }
        }
        for (let userRole of this.userRoles) { // 遍历当前所选被授权用户的已授权纪录
          let delflag = true
          for (let item of this.ids) { // 遍历所有选中纪录
            if (userRole.processId === item.id) {
              delflag = false
              break
            }
          }
          if (delflag) {
            removeList.push(userRole.id)
          }
        }
      } else if (this.settype === 1) {
        console.log('settype1:' + this.processId)
        let insertObj = Object.assign({}, this.roleForm)
        insertObj.authUserId = this.roleuser[1]
        insertObj.processId = this.processId
        let insertOrUpdate = 'insert'
        for (let userRole of this.userRoles) {
          if (userRole.processId === this.processId) {
            insertObj.id = userRole.id
            insertOrUpdate = 'update'
            break
          }
        }
        if (insertOrUpdate === 'insert') {
          insertList.push(insertObj)
        } else if (insertOrUpdate === 'update') {
          updateList.push(insertObj)
        }
      }
      let para = {
        insertList: insertList,
        updateList: updateList,
        removeList: removeList
      }
      this.roleSubmitLoading2 = true
      this.$http.post(this.$http.defaults.selectionAPI + `api/busClueReportProcessAuth/saveAuth`, para).then(response => {
        this.roleSubmitLoading2 = false
        if (response.data.success) {
          this.$message({
            message: '提交成功',
            type: 'success'
          })
          this.$refs.drawer.closeDrawer()
          this.getList()
        } else {
          this.$message({
            message: '提交失败:' + response.data.message,
            type: 'error'
          })
        }
      })
    },
    removeAuth () {
      let para = {
        authUserId: this.roleuser[1],
        processId: this.processId
      }
      this.removeAuthLoading2 = true
      this.$http.post(this.$http.defaults.selectionAPI + `api/busClueReportProcessAuth/removeAuth`, para).then(response => {
        this.roleSubmitLoading2 = false
        if (response.data.success) {
          this.$message({
            message: '取消授权成功',
            type: 'success'
          })
          this.$refs.drawer.closeDrawer()
          this.getList()
        } else {
          this.$message({
            message: '取消授权失败:' + response.data.message,
            type: 'error'
          })
        }
      })
    },
    username (id) {
      for (let item of this.userlist) {
        for (let user of item.children) {
          if (user.value === id) { return user.label }
        }
      }
    },
    handleCheckAllChange (val) {
      this.role = val ? this.roles : []
      this.isIndeterminate = false
    },
    handleCheckedChange (value) {
      let checkedCount = value.length
      this.checkAll = checkedCount === this.roles.length
      this.isIndeterminate = checkedCount > 0 && checkedCount < this.roles.length
    },
    setRoleType () {
      if (this.roleuser[0] === 2) {
        this.setRole = true
        this.getRoles2()
      } else {
        this.setRole = false
        this.setrole0 = true
        this.getRoles()
      }
    },
    getuserlist () {
      this.$http.get(this.$http.defaults.selectionAPI + `api/selection/auth/getAuthUsers`).then(response => {
        if (response.data.success) {
          this.userlist = response.data.result
          // this.userlist.push({label: '司领导', value: -1})
          // this.userlist.push(response.data.result[1])
          // this.userlist.push({label: '监督处处内人员', value: -1})
        } else {
          console.log('获取失败:' + response.data.message)
          this.$message({
            message: '获取失败:' + response.data.message,
            type: 'error'
          })
        }
      })
    },
    setRoleForm (obj) {
      this.roleForm = {
        id: '',
        processId: '',
        authUserId: '',
        dw: false,
        xm: false,
        idcardno: false,
        xb: false,
        zw: false,
        zwcc: false,
        zywgwjwtzy: false,
        wtly: false,
        qtwtly: false,
        wtrd: false,
        cllx: false,
        qtcllx: false,
        clnr: false,
        cljdjg: false,
        qtcljdjg: false,
        cljdsj: false,
        clzxqk: false,
        yxq: false,
        qtyxq: false,
        jdws: false,
        remark: false
      }
      for (let item in this.roleForm) {
        if (item !== 'id' && item !== 'processId' && item !== 'authUserId' && obj && obj[item]) {
          this.roleForm[item] = true
        }
      }
      console.log('obj')
      console.log(obj)
      this.roles2change()
    },
    setAuth (id) {
      console.log('setAuthId:' + id)
      if (id) {
        this.settype = 1 // 单条记录授权
        this.processId = id
        this.drawer = true
        this.setAuthText = ''
        // 回显选定字段
        for (let item of this.userRoles) {
          if (item.processId === id) {
            this.setRoleForm(item)
            break
          } else {
            this.setRoleForm()
          }
        }
      } else {
        this.settype = 2 // 多条记录批量授权
        if (this.ids.length > 0) {
          this.drawer = true
          this.setAuthText = '（批量授权会覆盖用户之前的授权记录）'
          this.setRoleForm()
        } else {
          this.$message({
            message: '请选择至少一条记录',
            type: 'warning'
          })
        }
      }
    },
    changeAuthFlag () {
      this.authFlag ? this.authFlag = false : this.authFlag = true
    },
    handleSelectionChange (val) {
      this.ids = val
    },
    del (id) {
      this.$confirm('确认删除该记录吗?', '提示', {
        type: 'error'
      }).then(() => {
        this.$http.get(this.$http.defaults.selectionAPI + `api/busClueReportProcess/remove?id=` + id).then(response => {
          if (response.data.success === true) {
            this.$message({
              message: '删除成功',
              type: 'success'
            })
          } else {
            console.log('删除失败:' + response.data.message)
            this.$message({
              message: '删除失败:' + response.data.message,
              type: 'error'
            })
          }
          this.getList()
        })
      }).catch(() => {
      })
    },
    dialogHide (flag) {
      this.dialogVisible = false
      if (flag) {
        this.getList()
      }
    },
    detail (data) {
      this.readonly = true
      this.dialogtitle = '查看干部处理详情'
      data.edittype = 'edit'
      this.item = data
      this.dialogVisible = true
      this.timestamp2 = new Date().getTime()
    },
    exportPrj (id) {
      var _this = this
      this.$confirm('确定结束起草?', '提示', {
        type: 'success'
      }).then(() => {
        this.myloading = true
        this.$http.post(`/api/prj/finishqicao/` + id).then(function (response) {
          if (response.data.success === true) {
            _this.$message({
              message: '操作成功',
              type: 'success'
            })
          } else {
            console.log('操作失败:' + response.data.message)
            _this.$message({
              message: '操作失败:' + response.data.message,
              type: 'error'
            })
          }
          _this.myloading = false
          _this.getPrj()
        })
      })
    },
    editPrj: function (id) {
      console.log('editid:' + id)
      this.$router.push({path: '/assess/edit/' + id})
    },
    handleSizeChange (val) {
      this.changeSizeFlag = true
      this.pageNum = 1
      this.pageSize = val
      this.getList()
    },
    handleCurrentChange (val) {
      if (this.changeSizeFlag === false) {
        this.pageNum = val
        this.getList()
      }
    },
    // 查询
    search () {
      this.pageNum = 1
      this.getList()
    },
    // 排序
    sortChange: function (column, prop, order) {
      this.Sortkey = column.prop
      if (column.order === 'ascending') {
        this.Isace = 'asc'
      } else {
        this.Isace = 'desc'
      }
      this.getList()
    },
    getList () {
      // this.idcardNo = '330102196806012142'
      this.listLoading = true
      // var personParams = { Page: 0, Pagenum: 20, Personname: '', Unitkey: '', Sortkey: '', Isace: true, timestamp: new Date().getTime() }
      this.$http
        .get(this.$http.defaults.selectionAPI + `api/busClueReportProcess/queryByIdCard?idcard=` + this.idcardNo)
        .then(response => {
          if (response.data.success) {
            this.listLoading = false
            this.list = response.data.result
          } else {
            this.$message({
              message: '获取失败:' + response.data.message,
              type: 'error'
            })
          }
        })
        .catch(error => {
          this.$message({
            message: '网络获取失败:' + error,
            type: 'error'
          })
        })
    },
    delPrj (id) {
      var _this = this
      this.$confirm('确认删除该记录吗?', '提示', {
        type: 'error'
      }).then(() => {
        this.$http.post(`/api/prj/remove/` + id).then(function (response) {
          if (response.data.success === true) {
            _this.$message({
              message: '删除成功',
              type: 'success'
            })
          } else {
            console.log('删除失败:' + response.data.message)
            _this.$message({
              message: '删除失败:' + response.data.message,
              type: 'error'
            })
          }
          _this.getPrj()
        })
      }).catch(() => {
      })
    },
    querySearch (queryString, cb) {
      return this.getunits(this, queryString, cb)
    },
    getunits (self, queryString, cb) {
      let para = {
        unitname: queryString
      }
      self.$http
        .post(`/api/prj/searchunit/`, para)
        .then(function (response) {
          console.log('获取成功')
          var results = response.data
          let newArr = []
          results.forEach(function (item) {
            let obj = {'value': item}
            newArr.push(obj)
          })
          cb(newArr)
        })
        .catch(function (error) {
          console.log(error)
        })
    }
  },
  mounted () {
    this.getAllDics()
    this.geCurrUserRole()
    this.getuserlist()
    this.getList()
  }
}
</script>
<style>
#cluereport .el-drawer__wrapper{
  width: 100%;
  height: 100%;
  position: fixed !important;
  overflow: hidden;
}
  .wboxd .el-table th{
    font-weight: normal;
    background-image: linear-gradient(to bottom , #f8f8f8, #efefef);
  }
  .wboxd .el-table td, .el-table th{
    padding:0;
    font-size:var(--size14) !important;
    line-height: 20px;
    font-family: '宋体'
  }
  .tableth{
    background-image: linear-gradient(to bottom , #f8f8f8, #efefef);
    height:33px;
  }
  #testlist .wboxs{
    height:45px;
    padding-top:10px;
  }
</style>
<style scoped>
  #cluereport .el-button{
    color:#fff !important;
  }
  #cluereport h1{
    font-size:var(--size16) !important;
    font-weight: bolder;
    height: 30px;
    border-bottom: 1px solid #95B8E7;
    font-family: '宋体';
    line-height: 30px;
    color: #000;
    padding-left:10px;
    background-image: linear-gradient(to bottom , #EEF4FF, #E0ECFF);
    margin:0;
  }
  .el-pagination{
    float: left;
    padding:7px 10px;
  }
  #cluereport .wboxs{
    width: 100%;
    background: #fff;
    border: 1px solid #95B8E7;
    margin:0 10px;
    overflow: hidden;
    padding:0;
  }
  .wboxd{
    padding:0;
    width: calc(100% - 0px);
    background: #fff;
    border: 1px solid #95B8E7;
    margin:0 10px;
    overflow: hidden;
  }
</style>
